/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Front.Presentador;

import Excepciones.NoConexionException;
import Front.Contrato.IContratoGestorDescarga;
import Front.Vista.Inicio;
import Logica.Comandos.ComandoControlarSession;
import Logica.Fabricas.Comando;
import Session.Session;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

/**
 *
 * @author familia
 */
public class InicioHilo extends Thread {
    
    private IContratoGestorDescarga _vista;
    
    public InicioHilo(IContratoGestorDescarga vista){
        _vista = vista;
    }
    
    @Override
    public void run(){
        try {
            ComandoControlarSession comando = new ComandoControlarSession();
            comando.Ejecutar();
            while(true){
                if((!Session.isSesion())|| !comando.isAlive() ){
                    
                System.out.println("SE ACABO");
                    JOptionPane.showMessageDialog(new JFrame(),
                        "Se Perdio la conexion con el servidor!",
                        "Error de Conexion",
                        JOptionPane.ERROR_MESSAGE);
                    _vista.getVentana().dispose();
                    new Inicio().setVisible(true);
                    Session.LimpiarSession();
                    comando.Detener();
                    break;
                }
            }
        } catch (Exception ex) {
        }
    }
    
}
